ΓÇóYour programming language is object-oriented yet it's still dead simple. Your development cycle is much faster because the Java language is interpreted. The old compile-link-load-test-and-crash cycle has gone the way of the zumbooruk--now you just compile and run. When you're satisfied with your application, you can obtain maximum performance by using the built in just-in-time compiler to compile the Java intermediate code to native machine code.
ΓÇóYour applications are portable across multiple platforms. Write your applications once, and you never need to port them--they will run without modification on multiple operating systems and hardware architectures.
ΓÇóYour applications are robust because the Java run-time system manages memory for you--you don't have dangling pointers and memory leaks and trashing of memory because of bad pointers, because there are no pointers.
ΓÇóYour interactive graphical applications have high performance because multiple concurrent threads of activity in your application are supported by the multithreading built into the language.
ΓÇóYour applications are dynamically adaptable to changing environments because you can dynamically load code modules from anywhere in the network.
ΓÇóYour end users can trust that your applications are secure, even though they're downloading code from all over the Internet, because the Java run-time system has built-in protection against viruses and tampering.
Java to the rescue!
Java has been designed with security and portability in mind. The features of the language make writing distributed applications much easier.
ΓÇóTruly Object Oriented
Java is a truly Object Oriented language. Object-oriented design is very powerful because it facilitates the clean definition of interfaces and makes it possible to provide reusable code.
ΓÇóCompiled -> Interpreted
Java source code is compiled into byte codes for the Java Virtual Machine specification...
ΓÇóArchitecture Neutral & Portable
ΓÇóSimple
Java was based on C++, and the syntax is very similar, so programmers who know C++ will have little difficulty adopting Java. But Java is much simpler than C++; the best way to describe the simplicity of Java is to talk about some of the things that were omitted. Sun believed that a lot of the features of C++ were more of a hinderance to programmers than they were a benefit. These features were omitted from the language design without a loss of functionality. The most important features of C++ that are absent from Java are operator overloading and pointer arithmetic. There is no direct manipulation of pointers in Java. The language handles garbage collection for you. To sum up on the simplicity issue, Java is a full-service language without the endless special cases and exceptions plaguing C++.